<?php
/**
  * Klasse createPDF
  * @param  :
  *
  * @info   : Erstellen der PDF
  *
  * @datum  : 30.12.2010
  * @version: beta
 **/
class createPDF{

  /**
    * konstruktor createPDF
    * @param : ..
   **/
  public function  __construct() {

  }


   /**
    * Destruktor createPDF
    * @param : ..
   **/
  public function  __destruct() {


  }

   /**
    * fuCreatePDF()
    * @param : ..
   **/
  public function fuCreatePDF($stream) {

      $template = "";
      if($stream)
        $template = implode("\r\n", file("Anmeldung.htm"));
      else
        $template = implode("\r\n", file("export/Anmeldung.htm"));

        foreach ($_SESSION as $key => $value) {
            $template = str_replace('${REPLACE ' . $key . '}', $value, $template);
        }
        
        $schulform = $_SESSION['LSSchulFormSIM'];
        switch($schulform) {
            case "Hauptschule":
            case "Realschule":
            case "Gesamtschule":
            case "Gymnasium":
            case "Berufskolleg":
                break;
            default:
                $schulform = "Sonderschule";
        }
        
        $template = str_replace('${REPLACE ' . $schulform.'_LSName}', $_SESSION['LSName'], $template);
        $template = str_replace('${REPLACE ' . $schulform.'_LSOrt}', $_SESSION['LSOrt'], $template);
        $template = str_replace('${REPLACE ' . $schulform.'_LSSchulentlassDatum}', $_SESSION['LSSchulentlassDatum'], $template);
        $template = str_replace('${REPLACE ' . $schulform.'_LSKlasse}', $_SESSION['LSKlasse'], $template);
        $template = str_replace('${REPLACE ' . $schulform.'_LSAbschlussArt}', $_SESSION['LSAbschlussArt'], $template);
        $template = str_replace('${REPLACE AussiedlerExport}', $_SESSION['Aussiedler'] == "+" ? "Ja" : "Nein", $template);

        //Alle Repacements-Tags entfernen die nicht gesetzt wurden
        $template = preg_replace("/[\$]\{REPLACE [\w]*\}/", "", $template);

        //Weiß nicht ob das rein muss, war im beispiel so
        //$old_limit = ini_set("memory_limit", "128M");

        require_once("dompdf/dompdf_config.inc.php");
        $dompdf = new DOMPDF();
        $dompdf->load_html($template);
        $dompdf->set_paper(CPDF_Adapter::$PAPER_SIZES["a4"], "portrait");
        $dompdf->render();
        if($stream) {
            $dompdf->stream("Anmeldung.pdf");
        } else {
            return $dompdf->output();
        }

        //$dompdf->output();
        //$dompdf->stream("Anmeldung.pdf");




//    require_once 'Zend/Pdf.php';
//    //$pdf1 = new Zend_Pdf();
//    //$pdf1->newPage(10,10);
//    //$pdf1->save('test.pdf');
//
//    //ini_set('include_path', '../library/');
//    // Die Zend_pdf Klasse includen
//    //include_once('../library/Zend/Pdf.php');
//    // PDF Objekt erstellen
//
//    $pdf = new Zend_Pdf();
//      // Formatierungseinstellungen
//    $style = new Zend_Pdf_Style();
//    $style->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA_BOLD), 16);
//      // Neue Seite im PDF anlegen
//    $pdf->pages[] = ($page1 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4));
//      // Formatierungseinstellungen setzen
//    $page1->setStyle($style);
//      // Text schreiben und Zeichensatz angeben
//    $page1->drawText('Hallo Welt!', 36, 720,'utf-8');
//    //$page1->drawRoundedRectangle(5.0,5.0,5.0,10,10,Zend_Pdf_Page::SHAPE_DRAW_FILL_AND_STROKE);
//    $page1->drawLine(15.0, 715.0, 150.0, 715.0);
//    // Unser riesen PDF Dokument als test.pdf speichern
//    $pdf->save('test.pdf');
//    // PDF Datei laden (test.pdf) verändern und speichern
//    $pdf2 = Zend_Pdf::load('test.pdf');
//    // Wieder Formatierungseinstellungen setzen
//    $pdf2->pages[0]->setStyle($style);
//    $pdf2->pages[0]->drawText('2te Zeile', 36, 520);
//    $pdf2->pages[0]->drawText('3te Zeile', 36, 480);
//    $pdf2->pages[0]->drawText('4te Zeile', 36, 440);
//    $pdf2->save('test2.pdf'); // unser Erweitertes PDF
//    //
//
//    //$page->restoreGS(); //was bedeutet dieser Befehl
//
//      $pdfData = $pdf->render();
//
//      //header("Content-Disposition: inline; filename=test.pdf");
//      //header("Content-type: application/x-pdf");
//      //echo $pdfData;
//      return $pdfData;
  }
}
?>
